package com.platform.core.entity;

import com.platform.dto.NcloudSysNotifyDto;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * Description: 站内信实体类
 *
 * @author Coder
 */
@Setter
@Getter
@Entity
@Table(name = "ncloud_sys_notify")
public class NcloudSysNotifyEntity implements Serializable {

    /**
    * id
    */
    @Id
    @GenericGenerator(name = "system-uuid", strategy = "uuid")
    @GeneratedValue(generator = "system-uuid")
    private String id;

    /**
    * 业务id
    */
    @Column(name = "biz_id" )
    private String bizId;

    /**
    * 菜单路由
    */
    @Column(name = "biz_route" )
    private String bizRoute;

    /**
    * 通知类型(归集监控:collect,报送监控:submit,共享监控:share,共享申请:shareApply,订阅申请:dirApply,服务申请:serviceApply)
    */
    @Column(name = "type", nullable = false )
    private String type;

    /**
    * 通知名称
    */
    @Column(name = "title", nullable = false )
    private String title;

    /**
    * 通知内容
    */
    @Column(name = "content", nullable = false )
    private String content;

    /**
     * 状态
     */
    @Column(name = "status", nullable = false )
    private String status;

    /**
     * 附件信息
     */
    @Column(name = "attachment", nullable = false )
    private String attachment;

    /**
     * 创建时间
     */
    @Column(name = "create_date" )
    private LocalDateTime createDate;

    /**
     * 更新时间
     */
    @Column(name = "update_date" )
    private LocalDateTime updateDate;

    /**
     * 发布时间
     */
    @Column(name = "publish_date" )
    private LocalDate publishDate;

    /**
     * 截止时间
     */
    @Column(name = "deadline_date" )
    private LocalDate deadlineDate;

    /**
     * 创建人
     */
    @Column(name = "create_by", nullable = false )
    private String createBy;


}
